Event Driven Architecture (EDA)
システム内で通信する方法としてイベントを使用するもの
名前からして、Eventを使ってさえいればひとまずEDAということになるはずmrsekut.icon
https://gyazo.com/92bf59b76972c953a305031cf722c206 https://github.com/karanpratapsingh/system-design?tab=readme-ov-file#components-1
Event Producer
Eventを発行するやつ
Event Router
全ての(?)Eventを割り振るやつ
Event Consumer
特定のEventを処理するやつ
https://gyazo.com/bec4a01a968369600f4833293b211f6e
飛んできたeventをリクエストプロセッサーに導く
DBの情報を取得・更新してリクエストを処理する
イベント処理に対して高度な応答性と動的な制御が必要な場合に使用される
mediatorを必要としない、単純なevent処理フロー
4つの要素
開始event
イベントブローカー
event processor
処理event
https://gyazo.com/0747b321370521b6685830b450a71534
複数のevent processorが流れるようにeventを処理していく
イベント処理のワークフロー制御が必要な場合に使用される
https://gyazo.com/7b7458bcc9309450e05063285aa3c7b7
具体的なアーキテクチャ